Marek Kasik [Fri, 5 Feb 2021 17:13:56 +0000 (18:13 +0100)]
printing: Show all Avahi advertised printers
This commit unsubscribes CUPS backend from a DBus
signal in idle when listening for new items on Avahi.
Since GDBus emits gathered signals in idle while
checking whether the signal has been unsubscribed
it could happen that a signal was not processed
because it was removed from hash table of
subscribed signals.
This caused the situation where printers advertised
on Avahi were not listed in CUPS backend sometimes.
We need those signals since this happens when switching
from a general subscription which listens to signals
for all Avahi services to a specific one which listens
to just _ipp._tcp and _ipps._tcp (chicken and egg problem).
Marek Kasik [Fri, 5 Feb 2021 17:13:34 +0000 (18:13 +0100)]
printing: Create temporary queues for Avahi printers
This change extends set of Avahi advertised printers which
works with Gtk's CUPS print backend.
It creates a temporary queue (local printer) for each
Avahi printer in CUPS instead of accessing them directly
(via CUPS library).
This makes some printers work which did not work before and
also gives users more options to change in the print dialog.
This also changes naming of printers to be in accordance with CUPS.
It uses '_' instead of '-' and has hostname appended for CUPS remote
printers.
Matthias Clasen [Fri, 5 Feb 2021 12:48:10 +0000 (12:48 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
iconbrowser: Make image dnd work again
Closes #3648
See merge request GNOME/gtk!3159
Emmanuele Bassi [Fri, 5 Feb 2021 12:14:26 +0000 (12:14 +0000)]
Merge branch 'master' into 'master'
Improve the docs of GtkWidget and GtkGrid
See merge request GNOME/gtk!2946
Matthias Clasen [Fri, 5 Feb 2021 01:46:51 +0000 (20:46 -0500)]
iconbrowser: Make image dnd work again
We need to drag a texture, not a paintable.
Fixes: #3648
Matthias Clasen [Fri, 5 Feb 2021 00:10:47 +0000 (00:10 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
docs: Rewrite the long description for GtkDialog
Closes #3646
See merge request GNOME/gtk!3156
Matthias Clasen [Fri, 5 Feb 2021 00:07:18 +0000 (00:07 +0000)]
Merge branch 'doc-typo' into 'master'
gtkshow: Fix doc typo
See merge request GNOME/gtk!3158
Maximiliano Sandoval R [Thu, 4 Feb 2021 20:02:22 +0000 (21:02 +0100)]
gtkshow: Fix doc typo
Matthias Clasen [Thu, 4 Feb 2021 18:05:28 +0000 (13:05 -0500)]
docs: Rewrite the long description for GtkDialog
As was pointed out in #3646, some of the content here
was a bit outdated.
Fixes: #3646
Matthias Clasen [Thu, 4 Feb 2021 13:28:59 +0000 (13:28 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
More work on css transition tests
See merge request GNOME/gtk!3154
Matthias Clasen [Thu, 4 Feb 2021 06:05:40 +0000 (01:05 -0500)]
Drop the installed test for now
It fails in ci, and I have no idea why.
Matthias Clasen [Thu, 4 Feb 2021 12:20:24 +0000 (12:20 +0000)]
Merge branch 'pvs-fixes' into 'master'
Pvs fixes
See merge request GNOME/gtk!3155
Matthias Clasen [Thu, 4 Feb 2021 05:40:14 +0000 (00:40 -0500)]
treemodelfilter: Drop unreachable code
We never get here. The compiler says so.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:39:34 +0000 (00:39 -0500)]
css: Drop a bit of unreachable code
We never get here. The compiler says so.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:34:05 +0000 (00:34 -0500)]
a11y: Avoid out-of-bounds access
Don't use the index before we've checked its good.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:29:51 +0000 (00:29 -0500)]
gdk: Remove a redundant check
We already know desktop_notification_id is not NULL.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:25:36 +0000 (00:25 -0500)]
messagedialog: Don't initialize twice
We don't need to set these fields more than once.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:22:52 +0000 (00:22 -0500)]
composetable: Remove a redundant check
We already know seq_index is not NULL here.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:20:26 +0000 (00:20 -0500)]
x11: A case of argument order confusion
translate_keysym was expecting its arguments the
other way around.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:17:55 +0000 (00:17 -0500)]
textbtree: Avoid line vs char count confusion
The post_insert_fixup helper function was confused about
its argument order.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:13:53 +0000 (00:13 -0500)]
listbase: Don't specify the same thing twice
We only need to set EXPLICIT_NOTIFY once.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:11:42 +0000 (00:11 -0500)]
css: Fix border value parsing
This function was not resetting computed as it meant
to because the last loop was never executed.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 05:09:09 +0000 (00:09 -0500)]
vulkan: Fix image uploading by regions
This code did not make sense; it was incrementing
the wrong variable.
Pointed out in https://www.viva64.com/en/b/0793/
Matthias Clasen [Thu, 4 Feb 2021 01:27:55 +0000 (20:27 -0500)]
docs: Mention css drop-shadow filter
We don't support this filter, currently.
Matthias Clasen [Wed, 3 Feb 2021 19:47:24 +0000 (14:47 -0500)]
Add more css transition tests
Matthias Clasen [Wed, 3 Feb 2021 19:32:50 +0000 (14:32 -0500)]
Rename test to transition
Thats what it is about, so name it clearly.
Add missing installed tests too.
Matthias Clasen [Wed, 3 Feb 2021 16:57:34 +0000 (11:57 -0500)]
Add more css transition tests
Test font size transitions.
Matthias Clasen [Wed, 3 Feb 2021 16:56:43 +0000 (11:56 -0500)]
testsuite: Pass GDK_DEBUG=default-settings to css tests
Otherwise, settings might creep in and change css defaults.
Matthias Clasen [Wed, 3 Feb 2021 16:56:19 +0000 (11:56 -0500)]
cssvalue: Cosmetic change
Don't return FALSE from pointer-returning functions.
Matthias Clasen [Wed, 3 Feb 2021 16:21:57 +0000 (11:21 -0500)]
Improve the css value tests
The test code had some bugs. Fix those, and
print out useful information when tests fail.
Matthias Clasen [Wed, 3 Feb 2021 16:21:23 +0000 (11:21 -0500)]
css: Fix shadow value equal
This function was not doing the right thing.
Once we are doing the right thing and not compare
shadows as unequal, some reftests that inhibit
snapshots for a few frames now hang forever, since
we are no more redrawing unnecessarily. Fix that
with an explicit queue_draw.
Matthias Clasen [Thu, 4 Feb 2021 01:38:47 +0000 (01:38 +0000)]
Merge branch 'wip/jimmac/colored-list-image-buttons' into 'master'
Adwaita: allow suggested and destructive action buttons in lists
Closes #3643
See merge request GNOME/gtk!3153
Matthias Clasen [Thu, 4 Feb 2021 01:38:09 +0000 (01:38 +0000)]
Merge branch 'ebassi/for-master' into 'master'
Graphene is a dependency of Gsk, not Gdk
See merge request GNOME/gtk!3149
Jakub Steiner [Wed, 3 Feb 2021 22:13:24 +0000 (23:13 +0100)]
Adwaita: allow suggested and destructive action buttons in lists
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3643
Matthias Clasen [Wed, 3 Feb 2021 20:11:33 +0000 (20:11 +0000)]
Merge branch 'x11-dnd-fix' into 'master'
x11: Handle X-specific targets in drops
Closes #3642
See merge request GNOME/gtk!3151
Matthias Clasen [Wed, 3 Feb 2021 19:16:01 +0000 (14:16 -0500)]
x11: Handle X-specific targets in drops
This code is very similar to the handling for these
targets in the clipboard case.
Fixes: #3642
Matthias Clasen [Wed, 3 Feb 2021 15:17:34 +0000 (15:17 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!3150
Emmanuele Bassi [Wed, 3 Feb 2021 14:05:27 +0000 (14:05 +0000)]
Graphene is a dependency of Gsk, not Gdk
So let's put it in the right place when building the introspection data.
Matthias Clasen [Wed, 3 Feb 2021 14:02:06 +0000 (09:02 -0500)]
Link the data url tests statically
Thats the cleaner way to test internal apis.
Matthias Clasen [Wed, 3 Feb 2021 13:56:57 +0000 (08:56 -0500)]
Add tests for css value transitions
Just a few cases for now, enough to test a recently
fixed regression with shadow transitions.
Chun-wei Fan [Wed, 3 Feb 2021 02:16:58 +0000 (02:16 +0000)]
Merge branch 'uac.meson.master' into 'master'
gtk4-update-icon-cache: Avoid UAC on 32-bit Windows
Closes #3632
See merge request GNOME/gtk!3141
Chun-wei Fan [Wed, 3 Feb 2021 02:16:58 +0000 (02:16 +0000)]
gtk4-update-icon-cache: Avoid UAC on 32-bit Windows
As the program executable name has 'update' in its filename,
gtk4-update-icon-cache.exe is considered to be an installer program on 32-bit
Windows [1], which will cause the program to fail to run unless it is running
with elevated privileges (i.e. UAC).
Avoid this situation by embedding a manifest file into the final executable
that tells Windows that this is not a program that requires elevation.
Fixes issue #3632.
[1]: https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-vista/
cc709628(v=ws.10)?redirectedfrom=MSDN,
under section "Installer Detection Technology"
Matthias Clasen [Wed, 3 Feb 2021 00:43:44 +0000 (00:43 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
css: Allow transitioning different-size shadows
See merge request GNOME/gtk!3145
Matthias Clasen [Tue, 2 Feb 2021 20:22:32 +0000 (15:22 -0500)]
css: Allow transitioning different-size shadows
The code handles it just fine. The length check was
an erronous addition.
Matthias Clasen [Tue, 2 Feb 2021 17:29:14 +0000 (17:29 +0000)]
Merge branch 'im-context-work' into 'master'
Some im context work
Closes #1004, #186, and #3521
See merge request GNOME/gtk!3143
Matthias Clasen [Tue, 2 Feb 2021 17:00:51 +0000 (12:00 -0500)]
composetable: Parse hex escapes too
This was a small omission from the Compose file
syntax that doesn't cost us much to support.
Add a test for this syntax too.
Fixes: #1004
Matthias Clasen [Tue, 2 Feb 2021 16:53:24 +0000 (11:53 -0500)]
Add tests for string values
Add a test that checks we parse values with
multiple characters correctly.
Matthias Clasen [Tue, 2 Feb 2021 06:42:08 +0000 (01:42 -0500)]
composetable: Support string values in the cache
Change the cache format to include the character
data that we need to hold string values in the table.
Matthias Clasen [Tue, 2 Feb 2021 06:15:00 +0000 (01:15 -0500)]
composetable: Don't use GSlice for big blobs
This just doesn't make sense. This will use malloc
anyway, so just call malloc directly.
Matthias Clasen [Tue, 2 Feb 2021 06:09:54 +0000 (01:09 -0500)]
composetable: Keep multi-char values
Keep string values in the table, and return them
from the check function. This commit temporarily
disables the table caching, since the cache format
does not handle string values yet.
Fixes: #186
Matthias Clasen [Tue, 2 Feb 2021 16:38:20 +0000 (16:38 +0000)]
Merge branch 'wip/silence-bounds-warnings' into 'master'
gdk/toplevelsize: Remove warnings about exceeding bounds
Closes #3035
See merge request GNOME/gtk!3142
Matthias Clasen [Tue, 2 Feb 2021 05:21:11 +0000 (00:21 -0500)]
composetable: Parse multi-char values
Rewrite the value parsing function to accept strings
that hold more than a single Unicode character.
Matthias Clasen [Tue, 2 Feb 2021 04:58:18 +0000 (23:58 -0500)]
composetable: Another step towards multi-char values
Change the parser data structures to hold a string, rather
than a gunichar. We still only put a single Unicode character
into it, currently.
Matthias Clasen [Tue, 2 Feb 2021 04:37:05 +0000 (23:37 -0500)]
composetable: Prepare for multi character values
Make it possible for gtk_compose_table_check to return
a string instead of just a single Unicode character.
Currently, we only ever return strings holding a single
character, still.
Matthias Clasen [Tue, 2 Feb 2021 04:37:22 +0000 (23:37 -0500)]
imcontext: Prepare for multi-char values
Reshuffle things so we can easily handle values
that are strings instead of just single Unicode
characters.
Matthias Clasen [Tue, 2 Feb 2021 02:52:42 +0000 (21:52 -0500)]
composetable: Check algorithmic matching
Just some spot checks, enough to verify the
fix in the previous commit.
Matthias Clasen [Tue, 2 Feb 2021 02:51:51 +0000 (21:51 -0500)]
composetable: Fix algorithmic matching
The code wasn't paying attention to (lack of) nul-termination
in one place, causing it to not match when it should.
Matthias Clasen [Tue, 2 Feb 2021 02:10:44 +0000 (21:10 -0500)]
composetable: Add tests for compact table matching
Not very exhaustive, just some spot checks.
Matthias Clasen [Tue, 2 Feb 2021 01:41:45 +0000 (20:41 -0500)]
imcontext: Code cleanup
Get rid of auxiliary check_table function.
Matthias Clasen [Tue, 2 Feb 2021 01:27:38 +0000 (20:27 -0500)]
imcontext: Move code around
Move all the checking code to gtkcomposetable.c, and
add api that we can use in tests.
Matthias Clasen [Tue, 2 Feb 2021 00:55:56 +0000 (19:55 -0500)]
composetable: Add tests for matching
This tests the api we use to match key sequences
against compose tables.
Matthias Clasen [Tue, 2 Feb 2021 00:41:07 +0000 (19:41 -0500)]
imcontext: Use gtk_compose_table_check
Use the just-introduced api.
Matthias Clasen [Tue, 2 Feb 2021 00:40:22 +0000 (19:40 -0500)]
composetable: Add api to check tables
This copies the check_table code from gtkimcontextsimple.c,
in order to have an api for tests.
Matthias Clasen [Mon, 1 Feb 2021 20:48:06 +0000 (15:48 -0500)]
Add tests for GtkComposeTable
Add some tests for the code that parses Compose files.
This tests the fix in the previous commit.
Matthias Clasen [Mon, 1 Feb 2021 23:50:20 +0000 (18:50 -0500)]
composetable: Drop table debug code
This is better off in the tests that we are going to add.
Matthias Clasen [Mon, 1 Feb 2021 20:48:43 +0000 (15:48 -0500)]
composetable: Parser fixes
We were not handling octal escapes right.
Matthias Clasen [Mon, 1 Feb 2021 17:28:40 +0000 (12:28 -0500)]
imcontext: Drop GTK_MAX_COMPOSE_LEN
Drop GTK_MAX_COMPOSE_LEN from docs. It is no longer
used by GTK at all. We leave the define in place
for now, to avoid breaking 3rd party code that might
use it.
Matthias Clasen [Mon, 1 Feb 2021 17:21:06 +0000 (12:21 -0500)]
composetable: Warn when ignoring things
We should at least give a hint that we've seen the line,
otherwise people will wonder why nothing happened.
Matthias Clasen [Mon, 1 Feb 2021 17:07:24 +0000 (12:07 -0500)]
composetable: parse long sequences
Allow compose sequences of up to 20 code points.
Fixes: #3521
Matthias Clasen [Mon, 1 Feb 2021 13:40:31 +0000 (08:40 -0500)]
composetable: Fix an off-by-one
Fix an off-by-one in the code parsing octal escapes
in compose files.
Matthias Clasen [Mon, 1 Feb 2021 13:39:42 +0000 (08:39 -0500)]
imcontext: Stop using GTK_MAX_COMPOSE_LEN
Allocate the compose_buffer, and resize it when needed
to match the tables we use.
Matthias Clasen [Mon, 1 Feb 2021 17:08:38 +0000 (12:08 -0500)]
imcontext: Code cleanup
Use g_clear_pointer instead of opencoding it in
multiple places.
Jonas Ådahl [Mon, 1 Feb 2021 10:31:11 +0000 (11:31 +0100)]
gdk/toplevelsize: Remove warnings about exceeding bounds
Sometimes the size will exceed the minimum bounds. For example crazy
applications like the widget factory that contains the world, or when a
user interactively resizes a window to be larger than the monitor the
window is on is.
The former is questionable, but the latter is not, and from here we
can't really see the difference, so just stop complaining.
Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/3035
Matthias Clasen [Mon, 1 Feb 2021 06:20:40 +0000 (06:20 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
Closes #2319
See merge request GNOME/gtk!3140
Matthias Clasen [Mon, 1 Feb 2021 05:55:25 +0000 (00:55 -0500)]
imcontext: Allow sequences of length GTK_MAX_COMPOSE_LEN
There was an off-by-one error, making us reject sequences
of this length. But the rest of the code handles them
just fine.
Fixes: #2319
Matthias Clasen [Mon, 1 Feb 2021 05:44:08 +0000 (00:44 -0500)]
imcontext: Improve an error message
This error message was misleading, as pointed out
by Ralf Jung.
Matthias Clasen [Mon, 1 Feb 2021 05:43:44 +0000 (00:43 -0500)]
imcontext: Add a precondition check
Matthias Clasen [Mon, 1 Feb 2021 05:37:43 +0000 (00:37 -0500)]
imcontext: Show preedit for compose sequences
Show the sequences as they are entered, using ⎄ for
the compose key, to match what IBus does nowadays.
Also handle backspace to allow corrections.
Matthias Clasen [Mon, 1 Feb 2021 01:55:29 +0000 (20:55 -0500)]
imcontext: Update our check for dead keys
A bunch of keysyms for dead keys have been added since this
code was last touched. Update the check to cover the full
range from dead_grave to dead_greek.
Matthias Clasen [Mon, 1 Feb 2021 01:48:47 +0000 (01:48 +0000)]
Merge branch 'matthiasc/for-master' into 'master'
Matthiasc/for master
See merge request GNOME/gtk!3139
Matthias Clasen [Mon, 1 Feb 2021 01:34:45 +0000 (01:34 +0000)]
Merge branch 'wip/exalm/consumes-motion' into 'master'
Drag fixes and cleanups
Closes #3513
See merge request GNOME/gtk!3001
Matthias Clasen [Fri, 29 Jan 2021 15:45:27 +0000 (10:45 -0500)]
Remove a forgotten file
The example series only has 9 steps now. Remove remnants
of step 10.
Matthias Clasen [Mon, 1 Feb 2021 01:22:59 +0000 (20:22 -0500)]
nativedialog: Add more docs
Emphasize that native dialogs aren't widgets, and are not
kept alive by GTK.
Matthias Clasen [Mon, 1 Feb 2021 00:44:08 +0000 (00:44 +0000)]
Merge branch 'tool-static' into 'master'
tools: Don't static and dynamic link on libgtk4
See merge request GNOME/gtk!3138
Matthias Clasen [Mon, 1 Feb 2021 00:32:05 +0000 (00:32 +0000)]
Merge branch 'wip/exalm/activate' into 'master'
listitemwidget: Activate on release instead of press
Closes #3345
See merge request GNOME/gtk!3008
Xavier Claessens [Sun, 31 Jan 2021 16:03:16 +0000 (11:03 -0500)]
tools: Don't static and dynamic link on libgtk4
Ungedummt [Sat, 30 Jan 2021 21:05:40 +0000 (22:05 +0100)]
GtkGrid: Add xml example for GtkBuildable to docs
Added an example and a short discription for the properties
Ungedummt [Sat, 30 Jan 2021 20:56:03 +0000 (21:56 +0100)]
Fix small typo in the docs of GtkWidget
In a XML example was MyGrid as a class defined; replaced with GtkGrid
Matthias Clasen [Sat, 30 Jan 2021 03:28:28 +0000 (22:28 -0500)]
4.1.0
Matthias Clasen [Sat, 30 Jan 2021 03:45:21 +0000 (22:45 -0500)]
tests: Disable the textview-margins reftest
It is too flaky to be useful.
Matthias Clasen [Sun, 31 Jan 2021 00:28:02 +0000 (19:28 -0500)]
node editor: Add a dark mode toggle
This is useful to see light rendering clearly.
Rafael Fontenelle [Sat, 30 Jan 2021 19:15:43 +0000 (19:15 +0000)]
Update Brazilian Portuguese translation
(cherry picked from commit
056c3e11a148ff72638afac0e4e9511a11d9987b)
Timm Bäder [Sat, 30 Jan 2021 17:58:33 +0000 (17:58 +0000)]
Merge branch 'mcclurgm-master-patch-63249' into 'master'
Document nullability of gtk_list_box_get_selected_row
See merge request GNOME/gtk!3137
Rafael Fontenelle [Sat, 30 Jan 2021 16:00:24 +0000 (16:00 +0000)]
Update Brazilian Portuguese translation
(cherry picked from commit
f224c8fab9c1d26e5a09e581b1de9d13fead6d74)
Michael McClurg [Sat, 30 Jan 2021 15:23:41 +0000 (15:23 +0000)]
Document nullability of gtk_list_box_get_selected_row
Piotr Drąg [Sat, 30 Jan 2021 13:21:32 +0000 (14:21 +0100)]
Update POTFILES.in
Matthias Clasen [Sat, 30 Jan 2021 03:25:19 +0000 (03:25 +0000)]
Merge branch 'fix-unfocus-on-unmap' into 'master'
Fix unsetting focus
Closes #3623
See merge request GNOME/gtk!3136
Matthias Clasen [Sat, 30 Jan 2021 02:41:16 +0000 (21:41 -0500)]
Fix unsetting focus
Make _gtk_window_unset_focus_and_default queue the changes
for after the next draw. This achieves two things: first,
it avoids invalidating css at the wrong time (e.g. when
setting child-visible during size-allocation), and second,
it defers the focus change until after the widget is
hidden, so that moving the focus has the desired effect
of picking a different, visible widget.
Fixes: #3623
Matthias Clasen [Fri, 29 Jan 2021 20:16:13 +0000 (20:16 +0000)]
Merge branch 'msvc.nounistd' into 'master'
testsuite/testutils.c: Fix build on Visual Studio
See merge request GNOME/gtk!3131
Matthias Clasen [Fri, 29 Jan 2021 19:06:03 +0000 (19:06 +0000)]
Merge branch 'gst-vaapi-fix' into 'master'
gtkgstsink: Sync texture before handing it to GDK
See merge request GNOME/gtk!3114